Field
The disclosure generally relates to a method and a system for processing direct server return load balancing using a loopback interface in a virtual network environment and a computer program stored in a computer readable media to implement a load balancing process connected to a computing node.
Discussion
A layer 4 (L4) load balancer is a networking device capable of distributing load to backend servers by dividing and distributing connections or sessions to the backend servers for layer 4 protocols, such as transmission control protocol (TCP), user datagram protocol (UDP), and the like. For example, Korean Unexamined Publication No. 10-2002-0069489 describes a method of connecting a client to a server, a method of operating a load balancer, and a method of packet transmission.
For instance, FIG. 1 illustrates a conventional operation of an L4 load balancer. As seen in FIG. 1, a networking environment may include a network address translation (NAT) node (or NAT) 110, a router 120, an L4 load balancer 130, a first backend server 140, a second backend server 150, and a third backend server 160. The NAT 110 is an address translator of a communication network for reducing depletion of public internet protocol (IP) addresses by translating a limited public IP address to a plurality of internal private IP addresses, and enhancing security against outside intrusion. The router 120 is a device helping a first communication network communicate with another (or second) communication network by connecting the networks regardless of a network configuration method or implemented protocol(s). The L4 load balancer 130 performs a role of distributing traffic, such as a hypertext transmission protocol (HTTP) request, from a client transmitted through the NAT 110 and the router 130 to at least one of the backend servers 140, 150, 160. In general, the L4 load balancer 130 is provided in a form that a software module for load balancing is combined with a hardware device to implement the L4 load balancing function(s).
Meanwhile, FIG. 2 illustrates a conventional operation of an L4 load balancer that also perform a NAT operation. As seen in FIG. 2, a networking environment includes a router 210, an L4 load balancer 220 including a NAT function, a first backend server 230, a second backend server 240, and a third backend server 250. Comparing FIGS. 1 and 2, a public network and a private network are separated based on the NAT 110 in FIG. 1, and a public network and a private network are separated based on the L4 load balancer 220 including the NAT function in FIG. 2. The backend servers 140, 150, 160, 230, 240, 250 may not know an address, e.g., IP address, of a client in each of the network environments described in association with FIGS. 1 and 2. Also, latency increases at least because requests (or responses) of the backend servers 140, 150, 160, 230, 240, 250 are transmitted to the client through the L4 load balancer 130 or the L4 load balancer 220 including the NAT function.
Technology for a response in a backend server that does not go through a load balancer that also reduces latency will be described in association with FIG. 3. That is, FIG. 3 illustrates a conventional operation of an L4 direct server return (DSR) load balancer. As seen in FIG. 3, a network environment includes a router 310, an L4 DSR load balancer 320, a first backend server 330, a second backend server 340, and a third backend server 350. Backend servers 330, 340, 350 respectively include loopback interfaces 331, 341, 351. In this manner, each of the backend servers 330, 340, 350 may directly transfer (or transmit) virtual IP (VIP) traffic to the router 310 without going through the L4 DSR load balancer 320. In other words, because each of the backend servers 330, 340, 350 may directly manage the VIP traffic for load balancing and directly transfer a response to the router 310 without going through the L4 DSR load balancer 320, each of the backend servers 330, 340, 350 have an advantage in reducing latency. However, issues may arise with the loopback interfaces 331, 341, 351 being set in the backend servers 330, 340, 350. Also, because all of the equipment is in a public network and has knowledge of the IP address of a client, there can be scaling issues given that many public IP addresses are already allocated, and, as such, public IP addresses are relatively scarce. When, however, NAT is used to solve issues with depletion of public IP addresses, there is an issue that a backend server may not know the IP address of a client.
It is also noted that virtual private cloud (VPC) technology may enable an independent cloud environment to be configured as an exclusive rack for a customer. A service provider providing a service for the VPC may provide a service for a configuration of a private cloud for customer. A technology for load balancing in the VPC environment has a difference with the load balancing in a general network situation previously described in association with FIGS. 1 to 3. For example, the previously described load balancers and backend servers are provided as virtualized resources. Also, when the service provider provides the L4 DSR load balancer to gain an advantage of reduced latency, there is an issue that it is difficult to request and/or force setup of a loopback interface at each of the backend virtual machine servers in a configuration requested by customers.
The above information disclosed in this section is for understanding the background of the inventive concepts, and, therefore, may contain information that does not form prior art.